<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>this</title>
    <script>
        /*
        解析器在调用函数每次都会向函数内部传递进一个隐含的参数
        这个隐含参数就是this,this指向的是一个对象,
        这个对象我们成为函数执行时的上下文对象
        根据函数调用方式的不同，this会指向不同的对象
              1.已函数的形式调用，this永远都是window
              2.以方法的形式调用，this就是调用方法的那个对象
              3.当以构造函数的形式调用时，this就是新创建的对象
              总结：this指向调用它的方法的对象     例如 x调用this，this-> x的对象

         */
        console.log(this);
        var name="全局";
        function fun(){
            console.log(this.name);
        }
        var obj={
            name:"孙悟空",
            sayName:fun
        };
        var obj2={
            name:"沙和尚",
            sayName:fun
        };
        obj2.sayName();
    </script>
</head>
<body>
</body>
</html>